package cn.historia.domain.strategy.model.entity;

import cn.historia.types.common.Constants;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.StringUtils;

/**
 * @package: cn.historia.domain.strategy.model.entity
 * @className: StrategyEntity
 * @author: 云溪
 * @description: 策略实体
 * @date: 2025/7/18 23:14
 * @version: 1.0
 */

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class StrategyEntity {

    /** 抽奖策略ID */
    private Long strategyId;
    /** 抽奖策略描述 */
    private String strategyDesc;
    /** 规则模型，rule配置的模型同步到此表，便于使用 */
    private String ruleModels;


    public String[] ruleModels() {
        if (StringUtils.isBlank(ruleModels)) return null;
        return ruleModels.split(Constants.SPLIT);
    }

    public String getRuleWeight() {
        String[] ruleModels = this.ruleModels();
        if (null == ruleModels) return null;
        for(String ruleModel : ruleModels){
            if ("rule_weight".equals(ruleModel))return ruleModel;
        }
        return null;
    }


}
